#ifndef CELL_H
#define CELL_H

#include "supcell.h"

/*! @brief  A Cell is a class essentialy storing an index to a SupCell, and it's position inside
/*  the SupArray. The Goal of the Cell is mainly to store a map with references to SupCell Objects.
/*  SupCell are the real "object" inside the SupArray. The Cell are only here for space partionning    */
template <class T>
class Cell
{
    private :

    public :

    /**********************************
    /*          Properties
    /**********************************/

        /***********************************
        /*          Members
        /***********************************/

            int     X;    /*!< X position inside the SupArray         */
            int     Y;    /*!< Y position inside the SupArray         */
            int     Z;    /*!< Y position inside the SupArray         */

            SupCell<T>  m_Reference;    /*!< Reference to the supCell      */

    /**********************************
    /*          Construcors
    /**********************************/

            Cell();
            Cell(int x);
            Cell(int x, int y);
            Cell(int x, int y, int z);


};

#endif // CELL_H
